function [T_order, T] = dynamic_g3_tt(y, x, params, steady_state, T_order, T)
if T_order >= 3
    return
end
[T_order, T] = M30b.sparse.dynamic_g2_tt(y, x, params, steady_state, T_order, T);
T_order = 3;
if size(T, 1) < 85
    T = [T; NaN(85 - size(T, 1), 1)];
end
T(70) = (y(15)+y(15))/(y(15)*y(15)*y(15)*y(15));
T(71) = getPowerDeriv(y(12),1-y(20),3);
T(72) = getPowerDeriv(y(12),(-y(20)),3);
T(73) = y(12)^(1-y(20)-2);
T(74) = y(12)^((-y(20))-2);
T(75) = (1-y(20))*T(35)*T(35)*T(45)-T(35)*T(45)-T(35)*T(45);
T(76) = (y(15)*y(15)*y(15)*y(15)*(-(2*(-y(11))))-(-((-y(11))*(y(15)+y(15))))*(y(15)*y(15)*(y(15)+y(15))+y(15)*y(15)*(y(15)+y(15))))/(y(15)*y(15)*y(15)*y(15)*y(15)*y(15)*y(15)*y(15));
T(77) = (T(2)*T(35)*2*(y(20)-1)+T(3)*T(35)*T(2)*T(35)-(T(2)*T(35)*2*(y(20)-1)+2*(T(2)-1)))*(T(3)*2*(y(20)-1)+T(3)*2*(y(20)-1));
T(78) = getPowerDeriv(y(22),1-y(30),3);
T(79) = y(22)^(1-y(30)-2);
T(80) = y(22)^((-y(30))-2);
T(81) = (1-y(30))*T(37)*T(37)*T(58)-T(37)*T(58)-T(37)*T(58);
T(82) = (y(13)*y(13)*y(13)*y(13)*(-(2*(-y(21))))-(-((-y(21))*(y(13)+y(13))))*(y(13)*y(13)*(y(13)+y(13))+y(13)*y(13)*(y(13)+y(13))))/(y(13)*y(13)*y(13)*y(13)*y(13)*y(13)*y(13)*y(13));
T(83) = (T(7)*T(37)*2*(y(30)-1)+T(8)*T(37)*T(7)*T(37)-(T(7)*T(37)*2*(y(30)-1)+2*(T(7)-1)))*(T(8)*2*(y(30)-1)+T(8)*2*(y(30)-1));
T(84) = getPowerDeriv(y(3),params(4),3);
T(85) = getPowerDeriv(y(15),1-params(4),3);
end
